物件導向的世界強調封裝,意味著物件的內部細節應該對外部保持隱藏,外部只能通過提供的方法與物件交互。這樣可以防止物件的內部狀態被隨意修改。
可以使用private關鍵字來保護屬性,並提供getters和setters方法來控制屬性的訪問和修改。
在以下的例子中,brand屬性是私有的,外部無法直接訪問,但可以通過 getBrand()方法來取得其值,並通過setBrand()方法來修改它。
class Car {
private String brand;
private String model;
private int year;
public Car(String brand, String model, int year) {
this.brand = brand;
this.model = model;
this.year = year;
}
// Getter
public String getBrand() {
return brand;
}
// Setter
public void setBrand(String brand) {
this.brand = brand;
}
}
介紹一下什麼是getters 和 setters
為物件導向程式設計(OOP)中用來封裝物件屬性的常見方式。它們的主要作用是為物件的屬性提供安全的存取方式,即允許其他程式訪問和修改私有屬性,但同時保持對屬性值的控制和驗證。
getters(取值方法):用來讀取物件的私有屬性值。
setters(設值方法):用來修改物件的私有屬性值,通常會包含資料驗證以確保新值的有效性。